package demo1;

import java.util.*;
import java.util.concurrent.ConcurrentHashMap;

public class Demo3 {
    public static void main(String[] args) {
        List<String> list = new ArrayList<>();
        list.add("apple");
        list.add("banana");
        list.add("apple");
        list.add("orange");
        list.add("banana");
        list.add("grape");
        list.add("grape");

        Map<String, Integer> map = method(list);
        for(Map.Entry<String, Integer> entry : map.entrySet()) {
            System.out.println(entry.getKey() + " " + entry.getValue());
        }

    }
    public static Map<String, Integer> method(List<String> list) {
        Map<String, Integer> map = new Hashtable<>();
        for(String str : list) {
                if(map.containsKey(str)) {
                    map.put(str, map.get(str) + 1);
                } else {
                    map.put(str, 1);
                }
        }
        return map;
    }
}
